如果您正在考慮選擇哪種虛擬化服務(wù)器,但不熟悉這些技術(shù)之間的差異,那么本文可能會有所幫助。您將了解存在哪些基本虛擬化類型以及 KVM 和 LXC 虛擬化之間的區(qū)別,這通常用于 MasterDC 中的 VPS 服務(wù)器。
理解 VPS 的所有參數(shù)和技術(shù)細(xì)節(jié)相當(dāng)困難。這就是為什么我們決定解釋虛擬化本身是如何工作的,同時重點(diǎn)介紹Master DC 中常用的KVM 和 LXC ,用于Linux OS 的虛擬化服務(wù)器。在我們開始討論相關(guān)技術(shù)之前,首先讓我們討論一下實(shí)際存在哪些虛擬化類型以及它們的一般缺點(diǎn)/優(yōu)點(diǎn)是什么。
虛擬化類型
存在幾種不同的虛擬化,特別是在執(zhí)行虛擬化的程度和級別上有所不同,這對 VPS 功能(例如可擴(kuò)展性和/或操作系統(tǒng)兼容性)具有根本影響。為了達(dá)到本文的目的,介紹兩種基本類型就足夠了——完全虛擬化和操作系統(tǒng)級別的虛擬化。顯然還有許多其他部分虛擬化,它們只虛擬化一些硬件實(shí)例(內(nèi)存、處理器、網(wǎng)卡),但這些不是本文的主題。
完全或換句話說,原生虛擬化是真正意義上的虛擬化。它的關(guān)鍵組件是一個管理程序,它監(jiān)視和控制直接在硬件級別上運(yùn)行的 VS。您可以將其想象為一個主要的仲裁者,將性能和物理服務(wù)器內(nèi)存分配給各個虛擬服務(wù)器,同時將服務(wù)器彼此分開。
操作系統(tǒng)位于虛擬機(jī)管理程序之上,可以在單個虛擬機(jī)上啟動各種未修改的操作系統(tǒng),這使其成為完全虛擬化的主要優(yōu)勢之一。但另一方面,管理費(fèi)用也相當(dāng)高。運(yùn)行管理程序本身可能會消耗多達(dá) 20% 的物理服務(wù)器性能。完全虛擬化的一個典型例子是 VMware 解決方案。
操作系統(tǒng)級別的虛擬化創(chuàng)建了所謂的容器,也使得在一臺物理服務(wù)器上運(yùn)行多個獨(dú)立的虛擬機(jī)成為可能。主要區(qū)別在于這些虛擬機(jī)運(yùn)行在一個共享的操作系統(tǒng)內(nèi)核上,因此各個虛擬機(jī)(容器)的操作系統(tǒng)必須具有相同的內(nèi)核。因此,用于創(chuàng)建虛擬機(jī)的應(yīng)用程序高于操作系統(tǒng)的級別。
操作系統(tǒng)級別的虛擬化是有利的,因?yàn)榕c完全虛擬化相比,它更有效地使用了性能和物理服務(wù)器容量。然后,應(yīng)用程序與管理程序類似,在磁盤、內(nèi)存上分配配額,并優(yōu)先處理處理時間。另一個重要優(yōu)勢是可以隔離容器并隨后將其部署在不同的環(huán)境中。這種虛擬化類型包括OpenVZ、Docker和LXC。
領(lǐng)先的軟件公司支持 KVM 虛擬化
KVM 管理程序最初是由以色列初創(chuàng)公司 Qumranet 開發(fā)的。然而,在 2008 年 9 月,RedHat——商業(yè)領(lǐng)域 Linux 解決方案的世界第一——以 1.07 億美元的價格買下了它。KVM 縮寫表示基于內(nèi)核的虛擬機(jī),可以粗略地翻譯為“核心級別的虛擬化”。因此,標(biāo)題指的是 KVM 使用的一種虛擬化機(jī)制——一個模塊,它使 Linux 核心作為管理程序工作。
一方面,必須安裝操作系統(tǒng),另一方面,該操作系統(tǒng)本身作為管理程序工作。因此,不同的來源并不總是就正在發(fā)生的虛擬化類型達(dá)成一致。大多數(shù)人聲稱 KVM 對應(yīng)于完全虛擬化,因?yàn)樵疾僮飨到y(tǒng)的已安裝核心的行為類似于管理程序。它符合完全虛擬化的關(guān)鍵特性之一,因?yàn)樵?KVM 上可以啟動未經(jīng)修改的操作系統(tǒng)。KVM 作為一個免費(fèi)軟件,可以在不同的 Linux 發(fā)行版上使用,例如 CentOS、Ubunt 和 Debian。如果要虛擬化 Windows 操作系統(tǒng)的物理服務(wù)器,則需要選擇不同的管理程序。
Docker 支持、安全性和其他 KVM 虛擬化優(yōu)勢
KVM 虛擬化的主要優(yōu)勢之一是您可以輕松地在必要時為項(xiàng)目創(chuàng)建容器,以便將它們彼此分離。支持 Docker的VPS是開發(fā)人員的理想解決方案,因?yàn)樗龠M(jìn)了高可移植性和更容易擴(kuò)展。您可以在我們關(guān)于容器如何工作以及為什么需要它們的文章中了解有關(guān) Docker 的更多信息。
由于 KVM 是 Linux 內(nèi)核的一部分,它可以非常有效地更改單個虛擬機(jī)的 RAM,而不會減慢已經(jīng)運(yùn)行的進(jìn)程。另一個重要特征是動態(tài)遷移的可能性。這意味著可以在不中斷其活動的情況下轉(zhuǎn)移各個虛擬系統(tǒng)。由于 Linux 基礎(chǔ),KVM 虛擬化提供了高水平的安全性,使用附件可能會得到增強(qiáng)。此外,SELinux 提供加密和訪問控制。
最后但并非最不重要的一點(diǎn)是,有必要提到不斷調(diào)整 KVM 管理程序。雖然一開始它只與 Linux x86 平臺兼容,但現(xiàn)在支持的平臺有數(shù)十種。KVM 管理程序也被認(rèn)為是市場上最可靠和最可靠的管理程序之一。從這個角度來看,與 RedHat 與其他關(guān)注軟件開發(fā)的研究公司(如 IBM、Intel 和 NetApp)的合作起著至關(guān)重要的作用。
LXC 虛擬化具有較低的間接成本
LXC 技術(shù)在操作系統(tǒng)級別虛擬化服務(wù)器,這就是為什么它被稱為“輕量級虛擬化”。與完全虛擬化相比,它節(jié)省了處理器內(nèi)存和性能,因?yàn)檎麄€虛擬化過程的成本要求非常低。因此,與完全虛擬化相比,可以更輕松、更快地創(chuàng)建新的虛擬機(jī)(容器)。
LXC 技術(shù)與 KVM 一樣,將被虛擬化的物理服務(wù)器的系統(tǒng)資源分配給各個虛擬機(jī)。例如,它定義了單個 VPS 的操作內(nèi)存、硬盤大小和處理器性能。它還負(fù)責(zé)隔離各個容器。因此,當(dāng)其中一個 VPS 受到威脅或攻擊時,其他服務(wù)器不會受到影響。但是與KVM相比,安全程度較低,這是由虛擬化本身的特性所決定的。完全虛擬化以比操作系統(tǒng)級別的虛擬化更復(fù)雜的方式隔離單個虛擬機(jī)。
另一個顯著的缺點(diǎn)是Docker 無法在 LXC 虛擬化服務(wù)器上??啟動,因?yàn)榇斯δ懿皇芄俜街С帧i_源技術(shù)Proxmox提供直觀的 Web 界面,用于管理具有 LXC 和 KVM 虛擬化的大量服務(wù)器,從而使管理員的工作更加輕松。
選擇具有虛擬化的服務(wù)器總是更好嗎?
顯然,這取決于服務(wù)器所針對的項(xiàng)目類型。KVM 虛擬化的主要優(yōu)點(diǎn)是單個 VPS 使用其自己的 Linux 發(fā)行版的內(nèi)核,因此不必共享主機(jī)服務(wù)器的操作系統(tǒng)內(nèi)核。
此外,如果您需要將 VPS 劃分為單獨(dú)的容器(可能使用 Docker),最好選擇帶有 KVM 虛擬化的 VPS。此功能特別適合應(yīng)用程序開發(fā)和測試,以及啟動多個應(yīng)放置在隔離環(huán)境中的網(wǎng)站。
帶有 LXC 虛擬化的 VPS 成本較低,但您必須忍受它的選項(xiàng)與主機(jī)服務(wù)器的操作系統(tǒng)兼容性綁定的事實(shí)。因此,它們的使用受到很大限制,更適合小型項(xiàng)目,例如網(wǎng)絡(luò)托管,特別是如果您打算使用 CMS 來插入內(nèi)容(編輯 Word Press、Joomla! 或 Drupal 類型)。即因?yàn)镃MS兼容基于容器的虛擬化技術(shù)。
從廣泛的 VPS 中進(jìn)行選擇
除了 KVM 和 LXC,Master 還提供使用 Hyper-V 技術(shù)虛擬化的 VPS,該技術(shù)在操作系統(tǒng)級別虛擬化服務(wù)器,因此特別適用于 Windows。研究我們提供的完整虛擬化服務(wù)器,并為您的項(xiàng)目選擇理想的解決方案。